package com.prolestar.notice.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import com.prolestar.common.annotation.Excel;
import com.prolestar.common.core.domain.BaseEntity;

import java.util.List;

/**
 * 通知公告对象 ps_notice
 * 
 * @author xuyp
 * @date 2022-11-12
 */
public class PsNotice extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 通知公告id */
    @Excel(name = "通知公告id")
    private Long id;

    /** 标题 */
    @Excel(name = "标题")
    private String title;

    /** 类型：图文|外链 */
    @Excel(name = "类型：图文|外链")
    private Long type;

    /** 封面图 */
    @Excel(name = "封面图")
    private String coverImage;

    /** 摘要 */
    @Excel(name = "摘要")
    private String abstracts;

    /** 内容 */
    @Excel(name = "内容")
    private String noticeContent;

    /** 发送范围，单位字符串，用;连接 */
    @Excel(name = "发送范围，单位字符串，用;连接")
    private String sendUnits;

    /** 跟踪类型，0=否；1=接收情况；2=填写反馈； */
    @Excel(name = "跟踪类型，0=否；1=接收情况；2=填写反馈；")
    private Long feedbackType;

    /** 状态；1=草稿；2=发送；3=撤回；4=删除； */
    @Excel(name = "状态；1=草稿；2=发送；3=撤回；4=删除；")
    private Long status;

    /**
     * 单位Id
     */
    private Long deptId;

    /**
     * 指定单位
     */
    private List<Long> unitIds;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setTitle(String title) 
    {
        this.title = title;
    }

    public String getTitle() 
    {
        return title;
    }
    public void setType(Long type) 
    {
        this.type = type;
    }

    public Long getType() 
    {
        return type;
    }
    public void setCoverImage(String coverImage) 
    {
        this.coverImage = coverImage;
    }

    public String getCoverImage() 
    {
        return coverImage;
    }
    public void setAbstracts(String abstracts) 
    {
        this.abstracts = abstracts;
    }

    public String getAbstracts() 
    {
        return abstracts;
    }
    public void setNoticeContent(String noticeContent) 
    {
        this.noticeContent = noticeContent;
    }

    public String getNoticeContent() 
    {
        return noticeContent;
    }
    public void setSendUnits(String sendUnits) 
    {
        this.sendUnits = sendUnits;
    }

    public String getSendUnits() 
    {
        return sendUnits;
    }
    public void setFeedbackType(Long feedbackType) 
    {
        this.feedbackType = feedbackType;
    }

    public Long getFeedbackType() 
    {
        return feedbackType;
    }
    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("title", getTitle())
            .append("type", getType())
            .append("coverImage", getCoverImage())
            .append("abstracts", getAbstracts())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("noticeContent", getNoticeContent())
            .append("sendUnits", getSendUnits())
            .append("feedbackType", getFeedbackType())
            .append("status", getStatus())
            .toString();
    }

    public Long getDeptId() {
        return deptId;
    }

    public void setDeptId(Long deptId) {
        this.deptId = deptId;
    }

    public List<Long> getUnitIds() {
        return unitIds;
    }

    public void setUnitIds(List<Long> unitIds) {
        this.unitIds = unitIds;
    }
}
